﻿using System.Collections.Generic;
using System.Runtime.Serialization;
using System.ServiceModel;
using BlueCrestStudio.DataVirtualization.Service.Data;

namespace BlueCrestStudio.DataVirtualization.Service
{
    // NOTE: You can use the "Rename" command on the "Refactor" menu to change the interface name "IService1" in both code and config file together.
    [ServiceContract]
    public interface IStockDataService
    {

        /// <summary>
        /// Fetches the total number of items available.
        /// </summary>
        /// <returns></returns>
        [OperationContract]
        int FetchCount();

        /// <summary>
        /// Fetches a range of items.
        /// </summary>
        /// <param name="startIndex">The start index.</param>
        /// <param name="count">The number of items to fetch.</param>
        /// <returns></returns>
        [OperationContract]
        List<Stock> FetchRange(int startIndex, int count);
    }
    
}
